//package com.wjk.kylin.mall.auth.security;
//
//import com.wjk.kylin.mall.common.core.bo.admin.UserNameBO;
//import com.wjk.kylin.mall.common.core.bo.member.MemberUserNameBO;
//import lombok.Data;
//import org.springframework.security.core.GrantedAuthority;
//import org.springframework.security.core.authority.SimpleGrantedAuthority;
//import org.springframework.security.core.userdetails.UserDetails;
//
//import java.util.Collection;
//
///**
// * @author wangjkui
// * @description 用户登录验证类
// * @date 2021/6/2
// */
//@Data
//public class CustomUserDetails implements UserDetails {
//    private static final long serialVersionUID = 1L;
//    /**
//     * id
//     */
//    private Long id;
//    /**
//     * 登录名
//     */
//    private String username;
//    /**
//     * 昵称
//     */
//    private String nickname;
//    /**
//     * 密码
//     */
//    private String password;
//    /**
//     * 锁定
//     */
//    private boolean enabled;
//    /**
//     * 角色
//     */
//    private Collection<SimpleGrantedAuthority> authorities;
//
//    public CustomUserDetails(MemberUserNameBO user) {
//        this.setId(user.getId());
//        this.setUsername(user.getUsername());
//        this.setNickname(user.getNickname());
//        this.setPassword(user.getPassword());
//        this.setEnabled(user.getStatus() == 0);
//    }
//
//    public CustomUserDetails(UserNameBO user) {
//        this.setId(user.getId());
//        this.setUsername(user.getUsername());
//        this.setNickname(user.getNickname());
//        this.setPassword(user.getPassword());
//        this.setEnabled(user.getIsActive() == 1);
//    }
//
//    @Override
//    public Collection<? extends GrantedAuthority> getAuthorities() {
//        return this.authorities;
//    }
//
//    @Override
//    public String getPassword() {
//        return this.password;
//    }
//
//    @Override
//    public String getUsername() {
//        return this.username;
//    }
//
//    @Override
//    public boolean isEnabled() {
//        return this.enabled;
//    }
//
//    /**
//     * 账户是否未过期,过期无法验证
//     * @return
//     */
//    @Override
//    public boolean isAccountNonExpired() {
//        return true;
//    }
//
//    /**
//     * 指定用户是否解锁,锁定的用户无法进行身份验证
//     * @return
//     */
//    @Override
//    public boolean isAccountNonLocked() {
//        return true;
//    }
//
//    /**
//     * 指示是否已过期的用户的凭据(密码),过期的凭据防止认证
//     * @return
//     */
//    @Override
//    public boolean isCredentialsNonExpired() {
//        return true;
//    }
//}
